﻿///@author Rafał Hazan
///@email  rafal.hazan@gmail.com
#ifndef __TOURNAMENT_SELECT___
#define __TOURNAMENT_SELECT___

#include "SelectOperator.h"
#include "EvolutionaryAlgorithm.h"
#include "CliqueFitnessFunction.h"
#include "RandomGenerator.h"

/// Selekcja turniejowa.
class TournamentSelect : public SelectOperator
{
private:
	RandomGenerator _random;
public:
	virtual ~TournamentSelect(void) {}
	virtual EvolutionaryAlgorithm::population_type select(int genNo, const EvolutionaryAlgorithm::population_type & actualPopulation);
};

#endif